package gitee.android.KUI

import android.content.Context
import android.content.res.Resources
import android.util.TypedValue

/**
 * @author 程序员Keven
 * 时间 : 2023-01-07
 * 描述 : 文本工具类
 */

public fun MeasureText(text : String , size : Float) : Float {


    return (text.length * size);

}


object DensityUtil {
    /**
     * 根据手机的分辨率从 dp 的单位 转成为 px(像素)
     */
    fun dip2px(context: Context, dpValue: Float): Int {
        val scale = context.resources.displayMetrics.density
        return (dpValue * scale + 0.5f).toInt()
    }

    /**
     * 根据手机的分辨率从 px(像素) 的单位 转成为 dp
     */
    fun px2dip(context: Context, pxValue: Float): Int {
        val scale = context.resources.displayMetrics.density
        return (pxValue / scale + 0.5f).toInt()
    }
}


val Float.px
    get() = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_PX,this, Resources.getSystem().displayMetrics)

val Float.dp
    get() = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,this, Resources.getSystem().displayMetrics);

val Float.sp
    get() = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP,this, Resources.getSystem().displayMetrics)

val Int.dp
    get() = this.toFloat().dp